<?php
/**
 * DsCache 接口
 *
 * @filesource DsCache.class.php
 * @package DsCache
 * @subpackage 
 * @version $id: 0.2, utf8, Mon Dec 14 12:07:01 CST 2009
 * @author LD King <kldscs[at]gmail.com>
 * @copyright Copyleft (D.) 2007 - 2009 MiFunny China Inc.
 * @link http://mifunny.info/
 */
interface DsCache{
    
    /**
     * 初始化 配置
     *
     * @param 默认的缓存策略 $default_policy
     */
    public function _init(array $policy=null);

	/**
     * 写入缓存
     *   缓存时间为0, 永不过期
     *
     * @param string $id 缓存唯一标识ID
     * @param mixed $data 缓存内容
     * @param mixed $expiration 缓存时间,默认 int 900
     */
	public function set($id, $data, $expiration=null);
	
	/**
     * 读取缓存，失败或缓存撒失效时返回 false
     *
     * @param string $id 缓存唯一标识ID
     * @param array $policy 配置数组
     *
     * @return mixed
     */
	public function get($id, $expiration=null);
	
	/**
	 * 删除指定的缓存
	 *
     * @param string $id 缓存唯一标识ID
     * @param int $delay 删除时间
	 */
	public function remove($id, $delay=0);
	
	/**
	 * 删除所有的缓存
	 *
	 * @param int $delay 延时删除
	 */
	public function clean($delay=0);

}//END inter DsCache
?>
